home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / prg_casm / snpd9611.zip / KB_DATA.H < prev    next >
C/C++ Source or Header  |  1996-11-24  |  2KB  |  54 lines

  1. .I 0 8
  2. /* +++Date last modified: 28-Sep-1996 */
  3.  
  4. /*
  5. **  by: Dan Kozak
  6. **  Revisions:
  7. **  30-Mar-96  Ed Blackman  OS/2 mods
  8. */
  9.  
  10. .D 1 2
  11. .I 11 31
  12. #include "snipkbio.h"
  13.  
  14. typedef struct                            /* Keyboard status structure  */
  15. {
  16.   unsigned short                          /* Least Significant Bit      */
  17.   right_shift_down  : 1,                  /* Right Shift key depressed  */ 
  18.   left_shift_down   : 1,                  /* Left Shift key depressed   */
  19.   ctrl_down         : 1,                  /* Ctrl key depressed         */
  20.   alt_down          : 1,                  /* Alt key depressed          */
  21.   scroll_on         : 1,                  /* Scroll Lock is on          */
  22.   num_on            : 1,                  /* Num Lock is on             */
  23.   caps_on           : 1,                  /* Caps Lock is on            */
  24.   ins_on            : 1,                  /* Insert state is active     */
  25.   left_ctl          : 1,                  /* Left Ctl key depressed     */
  26.   left_alt          : 1,                  /* Left Alt key depressed     */
  27. #if defined (__OS2__)
  28.   right_ctl         : 1,                  /* Right Ctl key depressed    */
  29.   right_alt         : 1,                  /* Right Alt key depressed    */
  30. #else       /* assume DOS */
  31.   sys_rq            : 1,                  /* SysRq depressed            */
  32.   pause_on          : 1,                  /* Pause is active            */
  33. #endif
  34.   scroll_down       : 1,                  /* Scroll Lock key depressed  */
  35.   num_down          : 1,                  /* Num Lock key depressed     */
  36.   caps_down         : 1,                  /* Caps Lock key depressed    */
  37. #if defined (__OS2__)
  38.   sys_rq            : 1,                  /* SysRq depressed            */
  39. #else       /* assume DOS */
  40.   ins_down          : 1;                  /* Insert key depressed       */
  41. #endif
  42. } biosshiftstate;                         /* Most Significant Bit       */
  43. .D 12 20
  44. .I 33 1
  45.       (biosshiftstate FAR * volatile)(peekkey());
  46. .D 34 1
  47. .I 47 4
  48. #if defined(__OS2__)
  49.           /* to store key info where peekkey() can find it */
  50.             if(kbhit()) ext_getch()
  51. #endif
  52. .I 49 1
  53.  
  54.